Implantable medical devices are used to deliver neurostimulation therapy to patients to treat a variety of symptoms or conditions such as chronic pain, tremor, Parkinson's disease, epilepsy, incontinence, or gastroparesis. Typically, implantable medical devices deliver neurostimulation therapy in the form of electrical pulses via leads that include electrodes. To treat the above-identified symptoms or conditions, for example, the electrodes may be located proximate to the spinal cord, pelvic nerves, or stomach, or within the brain of a patient.
Typically, a clinician uses a programmer, e.g., a computing device capable of communicating with implantable medical devices via device telemetry, to program an implantable medical device for delivery of neurostimulation therapy to a patient. In some cases, such clinician programmers take the form of handheld and/or tablet-type computing devices. Handheld and/or tablet-type clinician programmers can allow for a more natural “bedside” interaction between clinicians and patients during the programming process. Handheld and/or tablet-type clinician programmers can also allow the programmer to be handed off to the patient for entry of symptom and/or efficacy data, e.g., for patient-interactive programming as described in U.S. Pat. No. 6,308,102, issued to Sieracki et al. (hereinafter the Sieracki '102 patent), which is incorporated herein by reference in its entirety.
During the programming process, a clinician may select values for a number of programmable parameters in order to define the neurostimulation therapy to be delivered to a patient. For example, the clinician may select a voltage or current amplitude and pulse width for a stimulation waveform to be delivered to the patient, as well as a rate at which the pulses are to be delivered to the patient. The clinician may also select as parameters particular electrodes within an electrode set to be used to deliver the pulses, and the polarities of the selected electrodes. A group of parameter values may be referred to as a program in the sense that they drive the neurostimulation therapy to be delivered to the patient. The process of selecting values for the parameters that provide adequate results can be time consuming, and may require a great deal of trial and error before one or more “best” programs, e.g., programs that are better in terms of clinical efficacy versus side effects experienced than other programs tested, are discovered. The clinician may be required to make notations describing a number of programs and feedback received from the patient regarding the perceived efficacy of each program. In some cases, the clinician collects detailed graphical information describing patient symptoms and program efficacy, e.g., pain and paresthesia maps as described in the Sieracki '102 patent. In some cases, such as the patient-interactive programming systems described in the Sieracki '102 patent, complicated algorithms provide automated or semi-automated routines that involve generation of numerous potential programs with complex stimulus patterns, testing of the programs, and recordation of efficacy information for the programs.